package com.tencent.qf.team.dal;

import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * ty_order
 *
 * @author
 */
@Data
public class TyOrder implements Serializable {
    /**
     * // 订单id
     */
    private Integer orderId;

    /**
     * // 订单唯一标示，订单号:skuid:itmeid
     */
    private String plainOrderId;

    /**
     * // 一个订单编号中每个商品对应的订单号，即“订单+商品”维度的唯一标志
     */
    private String yxOrderId;

    /**
     * // 创建时间(毫秒)
     */
    private Long createTime;

    /**
     * // 订单编号
     */
    private String externalOrderId;

    /**
     * // 订单来源。wxapp：商家小程序、app：商家app、mobileweb：商家H5、pcweb：商家pcweb、offstore_pos_manual：线下人工pos、offstore_pos_self_help：线下自助收银、other：其他
     */
    private String orderSource;

    /**
     * // 订单类型；1：普通订单；2：充值订单；3：消费订单
     * // 订单类型；1：普通订单；2：充值订单；3：消费订单
     */
    private Byte orderType;

    /**
     * // 商品总数
     */
    private Integer goodsNumTotal;

    /**
     * // 订单商品总金额，单位分。注：已含单品级别优惠的商品金额，如单品直降
     */
    private Integer goodsAmountTotal;

    /**
     * // 订单运费，单位分
     */
    private Integer freightAmount;

    /**
     * // 订单金额，单位分。注：商品总金额+运费金额=订单金额
     */
    private Integer orderAmount;

    /**
     * // 订单应付金额，单位分。注：订单金额-订单级别的优惠金额（如：订单满减）=订单应付金额
     */
    private Integer payableAmount;

    /**
     * // 订单实付金额，单位分
     */
    private Integer paymentAmount;

    /**
     * // 订单状态。CREATED：待付款、DELIVER_PENDING：待发货、SENT：待收货、SUCCESS：交易完成、CANCEL：已取消、NOT_VALID：已失效
     */
    private String orderStatus;

    /**
     * // 分账状态。WAIT_FOR_COMMISSION("0","待分佣"),COMMISSION_SUCCESS("1","分佣成功"),COMMISSION_CANCEL("2","分佣取消"),COMMISSION_FAIL("3","分佣失败")
     */
    private String commissionStatus;

    /**
     * // 订单状态变更时间，unix 时间戳，字段长度为 13 字节
     */
    private Long statusChangeTime;

    /**
     * // 订单付款时间，unix 时间戳，字段长度为 13 字节
     */
    private Long payedTime;

    /**
     * // 订单发货时间，unix 时间戳，字段长度为 13 字节
     */
    private Long sentTime;

    /**
     * // 订单收货时间，unix时间戳，字段长度为 13 字节
     */
    private Long receivedTime;

    /**
     * // 订单完成时间，unix时间戳，字段长度为 13 字节
     */
    private Long finishTime;

    /**
     * // 订单取消时间，unix时间戳，字段长度为 13 字节
     */
    private Long cancelTime;

    /**
     * // 订单失效时间，unix时间戳，字段长度为 13 字节
     */
    private Long notValidTime;

    /**
     * // 订单付款时长，即订单支付（待发货）的时间-订单创建（待支付）的时间=付款时间
     */
    private Long createPayedTime;

    /**
     * // 订单发货时长，即订单发货（待收货）的时间-订单支付（待发货）的时间=发货时间
     */
    private Long payedSentTime;

    /**
     * // 是否逻辑删除。0-否，1-是
     */
    private Byte isDeleted;

    /**
     * // 小程序原始Id
     */
    private String miniprogramUsername;

    /**
     * 创建时间
     */
    private Date createdAt;

    /**
     * 更新时间
     */
    private Date updatedAt;

    /**
     * 删除时间
     */
    private Date deletedAt;

    /**
     * // 来源系统(1云选独有,2云选与惠聚并存)
     */
    private Byte orderSourceSystem;

    /**
     * // 分销机构id（sharerId）
     */
    private String yxSharerId;

    private String userRelationShareCode;

    /**
     * // 分享人uid
     */
    private String userRelationShareCodeUid;

    private String saasid;

    /**
     * // 分销单接口原始返回json
     */
    private String apiContent;

    private static final long serialVersionUID = 1L;
}